
insert into asm_x_conta_contatori_1



--                         **************************
-- contatori fascia unica  **************************
--                         **************************

  ----------- CONTATORI ATTIVA -------------
  
select tuttodb1.* from (

select contratti.CODICE_CONTRATTO CONTRATTO,
contratti.codice_utente,
contratti.POTENZA_IMPEGNATA potenza,

       P.NOMINATIVO_RAG_SOC AS RAGONE_SOCIALE,
       ' ' NOME,
 
       
     concat(
       concat(               
          concat(trim(i.toponimo_via),' '),
          concat(trim(i.prefisso_via),' ')),
      concat (trim(i.denominazione_via),' '))
    indirizzo,

      i.civico,
       concat (concat ('IT018E',substr(concat('00000000',forniture.codice_allacciamento),-7)),
       substr(forniture.progressivo_utenza,-1)) as POD,
       concat(concat (contratti.POTENZA_IMPEGNATA,' Kw '),modelli_contatore.FASI) INSTALL_CODE,
       case when modelli_contatore.FASI = 'M' then  'TM80' else 'RT90' end new_modello,
       ' ' NEW_MAtricola_p,
         
       '' install_access,
       
        '' DATA_PIANIF,
        modelli_contatore.CODICE_MODELLO_CONTATORE old_modello,
       utenze.matricola_contatore_1  AS OLD_MATRICOLA,
       0 as OLD_LETTURA,
             case when (modelli_contatore.CODICE_MODELLO_CONTATORE = 'TM80' 
                   and substr(utenze.matricola_contatore_1,11,2) <> '05')
                   
                   or (modelli_contatore.CODICE_MODELLO_CONTATORE = 'TM80' 
                   and substr(utenze.matricola_contatore_1,1,4) <> '6203')
                   or  modelli_contatore.CODICE_MODELLO_CONTATORE = 'R790'
                    or  modelli_contatore.CODICE_MODELLO_CONTATORE = 'R990'
                    or  modelli_contatore.CODICE_MODELLO_CONTATORE = 'RT90'
                    or modelli_contatore.CODICE_MODELLO_CONTATORE like 'M2%' 
                    or modelli_contatore.CODICE_MODELLO_CONTATORE like 'M3%' 
                    then utenze.matricola_contatore_1 
             else ' ' 
             end NEW_MAtricola_inst,
       ' ' sigillo,
       
       '' DATA_INSTAL,
       'ATT' fcon_id,
       ' ' note,
       ' ' CODICE_GPS,
       ' ' GPRS,
       
      case when (modelli_contatore.CODICE_MODELLO_CONTATORE = 'TM80' 
                   and substr(utenze.matricola_contatore_1,11,2) <> '05')
                   
            or (modelli_contatore.CODICE_MODELLO_CONTATORE = 'TM80' 
                   and substr(utenze.matricola_contatore_1,1,4) <> '6203')
            or  modelli_contatore.CODICE_MODELLO_CONTATORE = 'R790'
            or  modelli_contatore.CODICE_MODELLO_CONTATORE = 'R990'
            or  modelli_contatore.CODICE_MODELLO_CONTATORE = 'RT90' 
            or modelli_contatore.CODICE_MODELLO_CONTATORE like 'M2%' 
                    or modelli_contatore.CODICE_MODELLO_CONTATORE like 'M3%' THEN 3 ELSE 0 END STATO,     
       case  when substr(i.estensione_civico,1,1) >= 'A' and substr(i.estensione_civico,1,1) <= 'Z' 
                    then substr(i.estensione_civico,1,1) else '' end uff,
       mod(i.civico,2),
       
       gruppi.RAGGRUPP_RIEPFATT,
decode (gruppi.OPZIONE_TAR,'BT','-BT-','D2','-BT-','D3','-BT-','IPBT','-BT-','-MT-') opzione_tar,
contratti.DATA_AVVIO,contratti.DATA_CHIUSURA,'DB1',contratti.stato_contratto
     
        
        
       
                
       
       
       
from contratti,forniture,contatori,utenze,MODELLI_CONTATORE,
     INDIRIZZI I,CONTRATTI_AGGREGAZIONI CA,PERSONE P,gruppi

 where 
       forniture.CODICE_ALLACCIAMENTO =  utenze.CODICE_ALLACCIAMENTO
 and      forniture.progressivo_utenza = utenze.progressivo_utenza
 and   utenze.codice_gestione = 'ASM'
 and  utenze.codice_servizio = 'E'
 ---------------***************** 
--AND cONTRATTI.stato_contratto='A'

---------****************************
and contratti.CODICE_TARIFFA = gruppi.CODICE_TARIFFA
and contratti.CODICE_TIPO_USO = gruppi.CODICE_TIPO_USO
and contratti.CODICE_USO = gruppi.CODICE_USO
and gruppi.GRUPPO < 9
--and (gruppi.lst = 'LIBERI' or gruppi.lst = 'SALVA' or contratti.STATO_CONTRATTO = 'F') 

 and forniture.CODICE_GESTIONE = 'ASM'
 and forniture.CODICE_SERVIZIO = 'E'
 and forniture.progressivo_fornitura = '1'
 and contratti.CODICE_CONTRATTO = forniture.CODICE_CONTRATTO 
 and contatori.MATRICOLA_CONTATORE = utenze.matricola_contatore_1
 and contatori.CODICE_MODELLO_CONTATORE = utenze.codice_modello_contatore_1
 AND MODELLI_CONTATORE.CODICE_MODELLO_CONTATORE = contatori.CODICE_MODELLO_CONTATORE
 AND MODELLI_CONTATORE.CODICE_SERVIZIO = 'E'
   and MODELLI_CONTATORE.tensione ='B'
 
 and ca.codice_indirizzo_utilizzatore = i.codice_indirizzo
  and ca.CODICE_GESTIONE = 'ASM'
  and ca.CODICE_UTENTE = cONTRATTI.CODICE_UTENTE
  and ca.CODICE_PERSONA_UTILIZZATORE = p.codice_persona
  
  ----------------**************************************
--and contatori.CODICE_MODELLO_CONTATORE  not  like 'M%'
---***************************************************


 and contratti.CODICE_GESTIONE ='ASM'
  and contratti.codice_servizio = 'E' 
 

  ) TUTTOdb1